| API Documentation |  |

- MAIN PAGE
- NAMESPACES
- CLASSES

VectorWrapper.h
1 // VectorWrapper.h
3 //
5
6 namespace nkAstraeus::nkMathsWrap
7 {
11 class VectorWrapper final
12 {
13 public :
14
15 // Environment update
21 static void updateEnvironment (nkScripts::Environment* env) ;
22
23 // Callbacks
24 // Construction / destruction
35 static void* constructor (const nkScripts::DataStack& stack) ;
41 static void destructor (void* toDestroy) ;
52 static nkScripts::OutputValue newVec2 (const nkScripts::DataStack& stack) ;
63 static nkScripts::OutputValue newVec3 (const nkScripts::DataStack& stack) ;
74 static nkScripts::OutputValue newVec4 (const nkScripts::DataStack& stack) ;
75 // Getters
86 static nkScripts::OutputValue getX (void* vector) ;
97 static nkScripts::OutputValue getY (void* vector) ;
108 static nkScripts::OutputValue getZ (void* vector) ;
119 static nkScripts::OutputValue getW (void* vector) ;
120 // Setters
131 static void setX (const nkScripts::DataStack& stack) ;
142 static void setY (const nkScripts::DataStack& stack) ;
153 static void setZ (const nkScripts::DataStack& stack) ;
164 static void setW (const nkScripts::DataStack& stack) ;
165 // Length
176 static nkScripts::OutputValue getLengthVec2 (const nkScripts::DataStack& stack) ;
187 static nkScripts::OutputValue getLengthVec3 (const nkScripts::DataStack& stack) ;
198 static nkScripts::OutputValue getLengthVec4 (const nkScripts::DataStack& stack) ;
209 static nkScripts::OutputValue getLengthSquaredVec2 (const nkScripts::DataStack& stack) ;
220 static nkScripts::OutputValue getLengthSquaredVec3 (const nkScripts::DataStack& stack) ;
231 static nkScripts::OutputValue getLengthSquaredVec4 (const nkScripts::DataStack& stack) ;
232 // Distance
243 static nkScripts::OutputValue getDistanceVec2 (const nkScripts::DataStack& stack) ;
254 static nkScripts::OutputValue getDistanceVec3 (const nkScripts::DataStack& stack) ;
265 static nkScripts::OutputValue getDistanceVec4 (const nkScripts::DataStack& stack) ;
276 static nkScripts::OutputValue getDistanceSquaredVec2 (const nkScripts::DataStack& stack) ;
287 static nkScripts::OutputValue getDistanceSquaredVec3 (const nkScripts::DataStack& stack) ;
298 static nkScripts::OutputValue getDistanceSquaredVec4 (const nkScripts::DataStack& stack) ;
299 // Conversion
310 static nkScripts::OutputValue toString (const nkScripts::DataStack& stack) ;
311 // Normalization
325 static nkScripts::OutputValue normalizeVec2 (const nkScripts::DataStack& stack) ;
339 static nkScripts::OutputValue normalizeVec3 (const nkScripts::DataStack& stack) ;
353 static nkScripts::OutputValue normalizeVec4 (const nkScripts::DataStack& stack) ;
364 static nkScripts::OutputValue getNormalizedVec2 (const nkScripts::DataStack& stack) ;
375 static nkScripts::OutputValue getNormalizedVec3 (const nkScripts::DataStack& stack) ;
386 static nkScripts::OutputValue getNormalizedVec4 (const nkScripts::DataStack& stack) ;
387 // Dot product
398 static nkScripts::OutputValue dotProductVec2 (const nkScripts::DataStack& stack) ;
409 static nkScripts::OutputValue dotProductVec3 (const nkScripts::DataStack& stack) ;
420 static nkScripts::OutputValue dotProductVec4 (const nkScripts::DataStack& stack) ;
421 // Cross product
435 static nkScripts::OutputValue setAsCrossVec3 (const nkScripts::DataStack& stack) ;
446 static nkScripts::OutputValue getCrossVec3 (const nkScripts::DataStack& stack) ;
447 // Operators
458 static nkScripts::OutputValue add (const nkScripts::DataStack& stack) ;
469 static nkScripts::OutputValue sub (const nkScripts::DataStack& stack) ;
480 static nkScripts::OutputValue mul (const nkScripts::DataStack& stack) ;
491 static nkScripts::OutputValue div (const nkScripts::DataStack& stack) ;
492 // Comparaisons
503 static nkScripts::OutputValue eq (const nkScripts::DataStack& stack) ;
504
505 // Static versions
506 // Distance
517 static nkScripts::OutputValue distanceVec2 (const nkScripts::DataStack& stack) ;
528 static nkScripts::OutputValue distanceVec3 (const nkScripts::DataStack& stack) ;
539 static nkScripts::OutputValue distanceVec4 (const nkScripts::DataStack& stack) ;
550 static nkScripts::OutputValue distanceSquaredVec2 (const nkScripts::DataStack& stack) ;
561 static nkScripts::OutputValue distanceSquaredVec3 (const nkScripts::DataStack& stack) ;
572 static nkScripts::OutputValue distanceSquaredVec4 (const nkScripts::DataStack& stack) ;
573 // Dot product
584 static nkScripts::OutputValue dotVec2 (const nkScripts::DataStack& stack) ;
595 static nkScripts::OutputValue dotVec3 (const nkScripts::DataStack& stack) ;
606 static nkScripts::OutputValue dotVec4 (const nkScripts::DataStack& stack) ;
607 // Cross product
618 static nkScripts::OutputValue crossVec3 (const nkScripts::DataStack& stack) ;
619 } ;
620 }
nkAstraeus::nkMathsWrap
Encompasses the wrapping of nkMaths for scripting.
Definition: MatrixWrapper.h:7
nkAstraeus::nkMathsWrap::VectorWrapper::destructor
static void destructor(void *toDestroy)
nkAstraeus::nkMathsWrap::VectorWrapper::normalizeVec4
static nkScripts::OutputValue normalizeVec4(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::mul
static nkScripts::OutputValue mul(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::constructor
static void * constructor(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::add
static nkScripts::OutputValue add(const nkScripts::DataStack &stack)
nkScripts::Environment
Defines an environment in which scripts can execute.
Definition: Environment.h:14
nkAstraeus::nkMathsWrap::VectorWrapper::dotProductVec3
static nkScripts::OutputValue dotProductVec3(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::dotVec2
static nkScripts::OutputValue dotVec2(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getLengthSquaredVec3
static nkScripts::OutputValue getLengthSquaredVec3(const nkScripts::DataStack &stack)
nkMemory::BufferView
A view over data.
Definition: BufferView.h:18
nkAstraeus::nkMathsWrap::VectorWrapper::getDistanceVec2
static nkScripts::OutputValue getDistanceVec2(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getLengthVec3
static nkScripts::OutputValue getLengthVec3(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::sub
static nkScripts::OutputValue sub(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getDistanceSquaredVec4
static nkScripts::OutputValue getDistanceSquaredVec4(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getX
static nkScripts::OutputValue getX(void *vector)
nkAstraeus::nkMathsWrap::VectorWrapper::eq
static nkScripts::OutputValue eq(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper
Wraps a nkMaths::Vector and offers functions for use in scripting.
Definition: VectorWrapper.h:12
nkAstraeus::nkMathsWrap::VectorWrapper::newVec3
static nkScripts::OutputValue newVec3(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::updateEnvironment
static void updateEnvironment(nkScripts::Environment *env)
nkAstraeus::nkMathsWrap::VectorWrapper::toString
static nkScripts::OutputValue toString(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getLengthSquaredVec4
static nkScripts::OutputValue getLengthSquaredVec4(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getY
static nkScripts::OutputValue getY(void *vector)
nkAstraeus::nkMathsWrap::VectorWrapper::dotProductVec4
static nkScripts::OutputValue dotProductVec4(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::normalizeVec2
static nkScripts::OutputValue normalizeVec2(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::setZ
static void setZ(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::distanceSquaredVec2
static nkScripts::OutputValue distanceSquaredVec2(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getW
static nkScripts::OutputValue getW(void *vector)
nkScripts::FunctionParameter
A function parameter, used within the stack of arguments.
Definition: FunctionParameter.h:25
nkAstraeus::nkMathsWrap::VectorWrapper::getZ
static nkScripts::OutputValue getZ(void *vector)
nkAstraeus::nkMathsWrap::VectorWrapper::getDistanceSquaredVec3
static nkScripts::OutputValue getDistanceSquaredVec3(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::distanceVec3
static nkScripts::OutputValue distanceVec3(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::dotProductVec2
static nkScripts::OutputValue dotProductVec2(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::dotVec4
static nkScripts::OutputValue dotVec4(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::distanceSquaredVec3
static nkScripts::OutputValue distanceSquaredVec3(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::setAsCrossVec3
static nkScripts::OutputValue setAsCrossVec3(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::normalizeVec3
static nkScripts::OutputValue normalizeVec3(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::distanceVec4
static nkScripts::OutputValue distanceVec4(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::div
static nkScripts::OutputValue div(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::setY
static void setY(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::crossVec3
static nkScripts::OutputValue crossVec3(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::newVec2
static nkScripts::OutputValue newVec2(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getLengthSquaredVec2
static nkScripts::OutputValue getLengthSquaredVec2(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getNormalizedVec3
static nkScripts::OutputValue getNormalizedVec3(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getDistanceVec4
static nkScripts::OutputValue getDistanceVec4(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getDistanceSquaredVec2
static nkScripts::OutputValue getDistanceSquaredVec2(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getLengthVec2
static nkScripts::OutputValue getLengthVec2(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::distanceVec2
static nkScripts::OutputValue distanceVec2(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getCrossVec3
static nkScripts::OutputValue getCrossVec3(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getNormalizedVec2
static nkScripts::OutputValue getNormalizedVec2(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::setX
static void setX(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::setW
static void setW(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getNormalizedVec4
static nkScripts::OutputValue getNormalizedVec4(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::newVec4
static nkScripts::OutputValue newVec4(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::dotVec3
static nkScripts::OutputValue dotVec3(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getLengthVec4
static nkScripts::OutputValue getLengthVec4(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::distanceSquaredVec4
static nkScripts::OutputValue distanceSquaredVec4(const nkScripts::DataStack &stack)
nkAstraeus::nkMathsWrap::VectorWrapper::getDistanceVec3
static nkScripts::OutputValue getDistanceVec3(const nkScripts::DataStack &stack)